//package com.module.app.widget.skin.r
//
//import android.content.Context
//import android.content.res.TypedArray
//import android.util.AttributeSet
//import com.module.app.R
//import com.ruffian.library.widget.helper.RBaseHelper
//import com.ruffian.library.widget.helper.RTextViewHelper
//import skin.support.content.res.SkinCompatResources
//import skin.support.widget.SkinCompatHelper
//
///**
// * Author: yanxuwen
// * Date: 2023/4/23
// * Desc: ShapeView 主题皮肤统一处理
// * 颜色渐变暂时不处理
// */
//class SkinRHelperImpl(context: Context, helper: RBaseHelper<*>) {
//
//
//    var context = context
//
//    var helper = helper
//
//    /**填充背景*/
//    private var backgroundColorNormal = 0
//    private var backgroundColorPressed = 0
//    private var backgroundColorUnable = 0
//    private var backgroundColorChecked = 0
//    private var backgroundColorSelected = 0
//
//    /**边框*/
//    private var borderColorNormal = 0
//    private var borderColorPressed = 0
//    private var borderColorUnable = 0
//    private var borderColorChecked = 0
//    private var borderColorSelected = 0
//
//    /**字体颜色*/
//    private var textColorNormal = 0
//    private var textColorPressed = 0
//    private var textColorUnable = 0
//    private var textColorChecked = 0
//    private var textColorSelected = 0
//
//    /**阴影颜色*/
//    private var shadowColor = 0
//    private var rippleColor = 0
//
//
//    fun initTypedArray(attrs: AttributeSet?) {
//        if (attrs == null) {
//            return
//        }
//        val INVALID_ID = 0
//        val typedArray: TypedArray =
//            context.obtainStyledAttributes(attrs, R.styleable.RBaseView, 0, 0)
//        /**填充背景*/
//        backgroundColorNormal =
//            typedArray.getResourceId(R.styleable.RBaseView_background_normal, INVALID_ID)
//        backgroundColorPressed =
//            typedArray.getResourceId(R.styleable.RBaseView_background_pressed, INVALID_ID)
//        backgroundColorUnable =
//            typedArray.getResourceId(R.styleable.RBaseView_background_unable, INVALID_ID)
//        backgroundColorChecked =
//            typedArray.getResourceId(R.styleable.RBaseView_background_checked, INVALID_ID)
//        backgroundColorSelected =
//            typedArray.getResourceId(R.styleable.RBaseView_background_selected, INVALID_ID)
//        /**边框*/
//        borderColorNormal =
//            typedArray.getResourceId(R.styleable.RBaseView_border_color_normal, INVALID_ID)
//        borderColorPressed =
//            typedArray.getResourceId(R.styleable.RBaseView_border_color_pressed, INVALID_ID)
//        borderColorUnable =
//            typedArray.getResourceId(R.styleable.RBaseView_border_color_unable, INVALID_ID)
//        borderColorChecked =
//            typedArray.getResourceId(R.styleable.RBaseView_border_color_checked, INVALID_ID)
//        borderColorSelected =
//            typedArray.getResourceId(R.styleable.RBaseView_border_color_selected, INVALID_ID)
//        /**字体颜色*/
//        textColorNormal =
//            typedArray.getResourceId(R.styleable.RTextView_text_color_normal, INVALID_ID)
//        textColorPressed =
//            typedArray.getResourceId(R.styleable.RTextView_text_color_pressed, INVALID_ID)
//        textColorUnable =
//            typedArray.getResourceId(R.styleable.RTextView_text_color_unable, INVALID_ID)
//        textColorChecked =
//            typedArray.getResourceId(R.styleable.RTextView_text_color_checked, INVALID_ID)
//        textColorSelected =
//            typedArray.getResourceId(R.styleable.RTextView_text_color_selected, INVALID_ID)
//        /**阴影颜色*/
//        shadowColor =
//            typedArray.getResourceId(R.styleable.RBaseView_shadow_color, INVALID_ID)
//        /**水波纹颜色*/
//        rippleColor =
//            typedArray.getResourceId(R.styleable.RBaseView_ripple_color, INVALID_ID)
//        typedArray.recycle()
//
//    }
//
//    open fun applyBorderColorResource() {
//        val INVALID_ID = 0
//        /**填充背景*/
//        setSkinColor(backgroundColorNormal, object : OnSuccessListener {
//            override fun onSuccess(color: Int) {
//                helper.backgroundColorNormal = color
//            }
//        })
//        setSkinColor(backgroundColorPressed, object : OnSuccessListener {
//            override fun onSuccess(color: Int) {
//                helper.backgroundColorPressed = color
//            }
//        })
//        setSkinColor(backgroundColorUnable, object : OnSuccessListener {
//            override fun onSuccess(color: Int) {
//                helper.backgroundColorUnable = color
//            }
//        })
//        setSkinColor(backgroundColorChecked, object : OnSuccessListener {
//            override fun onSuccess(color: Int) {
//                helper.backgroundColorChecked = color
//            }
//        })
//        setSkinColor(backgroundColorSelected, object : OnSuccessListener {
//            override fun onSuccess(color: Int) {
//                helper.backgroundColorSelected = color
//            }
//        })
//        /**边框*/
//        setSkinColor(borderColorNormal, object : OnSuccessListener {
//            override fun onSuccess(color: Int) {
//                helper.borderColorNormal = color
//            }
//        })
//        setSkinColor(borderColorPressed, object : OnSuccessListener {
//            override fun onSuccess(color: Int) {
//                helper.borderColorPressed = color
//            }
//        })
//        setSkinColor(borderColorUnable, object : OnSuccessListener {
//            override fun onSuccess(color: Int) {
//                helper.borderColorUnable = color
//            }
//        })
//        setSkinColor(borderColorChecked, object : OnSuccessListener {
//            override fun onSuccess(color: Int) {
//                helper.borderColorChecked = color
//            }
//        })
//        setSkinColor(borderColorSelected, object : OnSuccessListener {
//            override fun onSuccess(color: Int) {
//                helper.borderColorSelected = color
//            }
//        })
//        /**字体颜色*/
//        var textHelper: RTextViewHelper? = null
//        if (helper is RTextViewHelper) {
//            textHelper = helper as RTextViewHelper
//        }
//        setSkinColor(textColorNormal, object : OnSuccessListener {
//            override fun onSuccess(color: Int) {
//                textHelper?.textColorNormal = color
//            }
//        })
//        setSkinColor(textColorPressed, object : OnSuccessListener {
//            override fun onSuccess(color: Int) {
//                textHelper?.textColorPressed = color
//            }
//        })
//        setSkinColor(textColorUnable, object : OnSuccessListener {
//            override fun onSuccess(color: Int) {
//                textHelper?.textColorUnable = color
//            }
//        })
//        setSkinColor(textColorChecked, object : OnSuccessListener {
//            override fun onSuccess(color: Int) {
//                textHelper?.textColorChecked = color
//            }
//        })
//        setSkinColor(textColorSelected, object : OnSuccessListener {
//            override fun onSuccess(color: Int) {
//                textHelper?.textColorSelected = color
//            }
//        })
//        /**阴影颜色*/
//        setSkinColor(shadowColor, object : OnSuccessListener {
//            override fun onSuccess(color: Int) {
//                helper?.shadowColor = color
//            }
//        })
//        /**水波纹颜色*/
//        setSkinColor(rippleColor, object : OnSuccessListener {
//            override fun onSuccess(color: Int) {
//                helper?.rippleColor = color
//            }
//        })
//    }
//
//    private fun setSkinColor(color: Int, listener: OnSuccessListener) {
//        val INVALID_ID = 0
//        var color = SkinCompatHelper.checkResourceId(color)
//        if (color != INVALID_ID) {
//            if (listener != null) {
//                listener.onSuccess(SkinCompatResources.getColor(context, color))
//            }
//        }
//    }
//
//    interface OnSuccessListener {
//        fun onSuccess(color: Int);
//    }
//
//    fun applySkin() {
//        applyBorderColorResource()
//    }
//}